
#include <stdio.h>
#include <string>
#include <iostream>
#include <sstream>
#include <fstream>
#include <stdlib.h>
#include <string.h>

#include "gp_colors.hh"
#include "gp_version.hh"

using namespace std;


const COLOR_TRANS color_trans[] = {
   {"AliceBlue"               , "xf0f8ff" , 0.941176 , 0.972549 , 1.000000} ,
   {"AntiqueWhite"            , "xfaebd7" , 0.980392 , 0.921569 , 0.843137} ,
   {"AntiqueWhite1"           , "xffefdb" , 1.000000 , 0.937255 , 0.858824} ,
   {"AntiqueWhite2"           , "xeedfcc" , 0.933333 , 0.874510 , 0.800000} ,
   {"AntiqueWhite3"           , "xcdc0b0" , 0.803922 , 0.752941 , 0.690196} ,
   {"AntiqueWhite4"           , "x8b8378" , 0.545098 , 0.513725 , 0.470588} ,
   {"BlanchedAlmond"          , "xffebcd" , 1.000000 , 0.921569 , 0.803922} ,
   {"BlueViolet"              , "x8a2be2" , 0.541176 , 0.168627 , 0.886275} ,
   {"CadetBlue"               , "x5f9ea0" , 0.372549 , 0.619608 , 0.627451} ,
   {"CadetBlue1"              , "x98f5ff" , 0.596078 , 0.960784 , 1.000000} ,
   {"CadetBlue2"              , "x8ee5ee" , 0.556863 , 0.898039 , 0.933333} ,
   {"CadetBlue3"              , "x7ac5cd" , 0.478431 , 0.772549 , 0.803922} ,
   {"CadetBlue4"              , "x53868b" , 0.325490 , 0.525490 , 0.545098} ,
   {"CornflowerBlue"          , "x6495ed" , 0.392157 , 0.584314 , 0.929412} ,
   {"DarkBlue"                , "x00008b" , 0.000000 , 0.000000 , 0.545098} ,
   {"DarkCyan"                , "x008b8b" , 0.000000 , 0.545098 , 0.545098} ,
   {"DarkGoldenrod"           , "xb8860b" , 0.721569 , 0.525490 , 0.043137} ,
   {"DarkGoldenrod1"          , "xffb90f" , 1.000000 , 0.725490 , 0.058824} ,
   {"DarkGoldenrod2"          , "xeead0e" , 0.933333 , 0.678431 , 0.054902} ,
   {"DarkGoldenrod3"          , "xcd950c" , 0.803922 , 0.584314 , 0.047059} ,
   {"DarkGoldenrod4"          , "x8b6508" , 0.545098 , 0.396078 , 0.031373} ,
   {"DarkGray"                , "xa9a9a9" , 0.662745 , 0.662745 , 0.662745} ,
   {"DarkGreen"               , "x006400" , 0.000000 , 0.392157 , 0.000000} ,
   {"DarkGrey"                , "xa9a9a9" , 0.662745 , 0.662745 , 0.662745} ,
   {"DarkKhaki"               , "xbdb76b" , 0.741176 , 0.717647 , 0.419608} ,
   {"DarkMagenta"             , "x8b008b" , 0.545098 , 0.000000 , 0.545098} ,
   {"DarkOliveGreen"          , "x556b2f" , 0.333333 , 0.419608 , 0.184314} ,
   {"DarkOliveGreen1"         , "xcaff70" , 0.792157 , 1.000000 , 0.439216} ,
   {"DarkOliveGreen2"         , "xbcee68" , 0.737255 , 0.933333 , 0.407843} ,
   {"DarkOliveGreen3"         , "xa2cd5a" , 0.635294 , 0.803922 , 0.352941} ,
   {"DarkOliveGreen4"         , "x6e8b3d" , 0.431373 , 0.545098 , 0.239216} ,
   {"DarkOrange"              , "xff8c00" , 1.000000 , 0.549020 , 0.000000} ,
   {"DarkOrange1"             , "xff7f00" , 1.000000 , 0.498039 , 0.000000} ,
   {"DarkOrange2"             , "xee7600" , 0.933333 , 0.462745 , 0.000000} ,
   {"DarkOrange3"             , "xcd6600" , 0.803922 , 0.400000 , 0.000000} ,
   {"DarkOrange4"             , "x8b4500" , 0.545098 , 0.270588 , 0.000000} ,
   {"DarkOrchid"              , "x9932cc" , 0.600000 , 0.196078 , 0.800000} ,
   {"DarkOrchid1"             , "xbf3eff" , 0.749020 , 0.243137 , 1.000000} ,
   {"DarkOrchid2"             , "xb23aee" , 0.698039 , 0.227451 , 0.933333} ,
   {"DarkOrchid3"             , "x9a32cd" , 0.603922 , 0.196078 , 0.803922} ,
   {"DarkOrchid4"             , "x68228b" , 0.407843 , 0.133333 , 0.545098} ,
   {"DarkRed"                 , "x8b0000" , 0.545098 , 0.000000 , 0.000000} ,
   {"DarkSalmon"              , "xe9967a" , 0.913725 , 0.588235 , 0.478431} ,
   {"DarkSeaGreen"            , "x8fbc8f" , 0.560784 , 0.737255 , 0.560784} ,
   {"DarkSeaGreen1"           , "xc1ffc1" , 0.756863 , 1.000000 , 0.756863} ,
   {"DarkSeaGreen2"           , "xb4eeb4" , 0.705882 , 0.933333 , 0.705882} ,
   {"DarkSeaGreen3"           , "x9bcd9b" , 0.607843 , 0.803922 , 0.607843} ,
   {"DarkSeaGreen4"           , "x698b69" , 0.411765 , 0.545098 , 0.411765} ,
   {"DarkSlateBlue"           , "x483d8b" , 0.282353 , 0.239216 , 0.545098} ,
   {"DarkSlateGray"           , "x2f4f4f" , 0.184314 , 0.309804 , 0.309804} ,
   {"DarkSlateGray1"          , "x97ffff" , 0.592157 , 1.000000 , 1.000000} ,
   {"DarkSlateGray2"          , "x8deeee" , 0.552941 , 0.933333 , 0.933333} ,
   {"DarkSlateGray3"          , "x79cdcd" , 0.474510 , 0.803922 , 0.803922} ,
   {"DarkSlateGray4"          , "x528b8b" , 0.321569 , 0.545098 , 0.545098} ,
   {"DarkSlateGrey"           , "x2f4f4f" , 0.184314 , 0.309804 , 0.309804} ,
   {"DarkTurquoise"           , "x00ced1" , 0.000000 , 0.807843 , 0.819608} ,
   {"DarkViolet"              , "x9400d3" , 0.580392 , 0.000000 , 0.827451} ,
   {"DeepPink"                , "xff1493" , 1.000000 , 0.078431 , 0.576471} ,
   {"DeepPink1"               , "xff1493" , 1.000000 , 0.078431 , 0.576471} ,
   {"DeepPink2"               , "xee1289" , 0.933333 , 0.070588 , 0.537255} ,
   {"DeepPink3"               , "xcd1076" , 0.803922 , 0.062745 , 0.462745} ,
   {"DeepPink4"               , "x8b0a50" , 0.545098 , 0.039216 , 0.313725} ,
   {"DeepSkyBlue"             , "x00bfff" , 0.000000 , 0.749020 , 1.000000} ,
   {"DeepSkyBlue1"            , "x00bfff" , 0.000000 , 0.749020 , 1.000000} ,
   {"DeepSkyBlue2"            , "x00b2ee" , 0.000000 , 0.698039 , 0.933333} ,
   {"DeepSkyBlue3"            , "x009acd" , 0.000000 , 0.603922 , 0.803922} ,
   {"DeepSkyBlue4"            , "x00688b" , 0.000000 , 0.407843 , 0.545098} ,
   {"DimGray"                 , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"DimGrey"                 , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"DodgerBlue"              , "x1e90ff" , 0.117647 , 0.564706 , 1.000000} ,
   {"DodgerBlue1"             , "x1e90ff" , 0.117647 , 0.564706 , 1.000000} ,
   {"DodgerBlue2"             , "x1c86ee" , 0.109804 , 0.525490 , 0.933333} ,
   {"DodgerBlue3"             , "x1874cd" , 0.094118 , 0.454902 , 0.803922} ,
   {"DodgerBlue4"             , "x104e8b" , 0.062745 , 0.305882 , 0.545098} ,
   {"FloralWhite"             , "xfffaf0" , 1.000000 , 0.980392 , 0.941176} ,
   {"ForestGreen"             , "x228b22" , 0.133333 , 0.545098 , 0.133333} ,
   {"GhostWhite"              , "xf8f8ff" , 0.972549 , 0.972549 , 1.000000} ,
   {"GreenYellow"             , "xadff2f" , 0.678431 , 1.000000 , 0.184314} ,
   {"HotPink"                 , "xff69b4" , 1.000000 , 0.411765 , 0.705882} ,
   {"HotPink1"                , "xff6eb4" , 1.000000 , 0.431373 , 0.705882} ,
   {"HotPink2"                , "xee6aa7" , 0.933333 , 0.415686 , 0.654902} ,
   {"HotPink3"                , "xcd6090" , 0.803922 , 0.376471 , 0.564706} ,
   {"HotPink4"                , "x8b3a62" , 0.545098 , 0.227451 , 0.384314} ,
   {"IndianRed"               , "xcd5c5c" , 0.803922 , 0.360784 , 0.360784} ,
   {"IndianRed1"              , "xff6a6a" , 1.000000 , 0.415686 , 0.415686} ,
   {"IndianRed2"              , "xee6363" , 0.933333 , 0.388235 , 0.388235} ,
   {"IndianRed3"              , "xcd5555" , 0.803922 , 0.333333 , 0.333333} ,
   {"IndianRed4"              , "x8b3a3a" , 0.545098 , 0.227451 , 0.227451} ,
   {"LavenderBlush"           , "xfff0f5" , 1.000000 , 0.941176 , 0.960784} ,
   {"LavenderBlush1"          , "xfff0f5" , 1.000000 , 0.941176 , 0.960784} ,
   {"LavenderBlush2"          , "xeee0e5" , 0.933333 , 0.878431 , 0.898039} ,
   {"LavenderBlush3"          , "xcdc1c5" , 0.803922 , 0.756863 , 0.772549} ,
   {"LavenderBlush4"          , "x8b8386" , 0.545098 , 0.513725 , 0.525490} ,
   {"LawnGreen"               , "x7cfc00" , 0.486275 , 0.988235 , 0.000000} ,
   {"LemonChiffon"            , "xfffacd" , 1.000000 , 0.980392 , 0.803922} ,
   {"LemonChiffon1"           , "xfffacd" , 1.000000 , 0.980392 , 0.803922} ,
   {"LemonChiffon2"           , "xeee9bf" , 0.933333 , 0.913725 , 0.749020} ,
   {"LemonChiffon3"           , "xcdc9a5" , 0.803922 , 0.788235 , 0.647059} ,
   {"LemonChiffon4"           , "x8b8970" , 0.545098 , 0.537255 , 0.439216} ,
   {"LightBlue"               , "xadd8e6" , 0.678431 , 0.847059 , 0.901961} ,
   {"LightBlue1"              , "xbfefff" , 0.749020 , 0.937255 , 1.000000} ,
   {"LightBlue2"              , "xb2dfee" , 0.698039 , 0.874510 , 0.933333} ,
   {"LightBlue3"              , "x9ac0cd" , 0.603922 , 0.752941 , 0.803922} ,
   {"LightBlue4"              , "x68838b" , 0.407843 , 0.513725 , 0.545098} ,
   {"LightCoral"              , "xf08080" , 0.941176 , 0.501961 , 0.501961} ,
   {"LightCyan"               , "xe0ffff" , 0.878431 , 1.000000 , 1.000000} ,
   {"LightCyan1"              , "xe0ffff" , 0.878431 , 1.000000 , 1.000000} ,
   {"LightCyan2"              , "xd1eeee" , 0.819608 , 0.933333 , 0.933333} ,
   {"LightCyan3"              , "xb4cdcd" , 0.705882 , 0.803922 , 0.803922} ,
   {"LightCyan4"              , "x7a8b8b" , 0.478431 , 0.545098 , 0.545098} ,
   {"LightGoldenrod"          , "xeedd82" , 0.933333 , 0.866667 , 0.509804} ,
   {"LightGoldenrod1"         , "xffec8b" , 1.000000 , 0.925490 , 0.545098} ,
   {"LightGoldenrod2"         , "xeedc82" , 0.933333 , 0.862745 , 0.509804} ,
   {"LightGoldenrod3"         , "xcdbe70" , 0.803922 , 0.745098 , 0.439216} ,
   {"LightGoldenrod4"         , "x8b814c" , 0.545098 , 0.505882 , 0.298039} ,
   {"LightGoldenrodYellow"    , "xfafad2" , 0.980392 , 0.980392 , 0.823529} ,
   {"LightGray"               , "xd3d3d3" , 0.827451 , 0.827451 , 0.827451} ,
   {"LightGreen"              , "x90ee90" , 0.564706 , 0.933333 , 0.564706} ,
   {"LightGrey"               , "xd3d3d3" , 0.827451 , 0.827451 , 0.827451} ,
   {"LightPink"               , "xffb6c1" , 1.000000 , 0.713725 , 0.756863} ,
   {"LightPink1"              , "xffaeb9" , 1.000000 , 0.682353 , 0.725490} ,
   {"LightPink2"              , "xeea2ad" , 0.933333 , 0.635294 , 0.678431} ,
   {"LightPink3"              , "xcd8c95" , 0.803922 , 0.549020 , 0.584314} ,
   {"LightPink4"              , "x8b5f65" , 0.545098 , 0.372549 , 0.396078} ,
   {"LightSalmon"             , "xffa07a" , 1.000000 , 0.627451 , 0.478431} ,
   {"LightSalmon1"            , "xffa07a" , 1.000000 , 0.627451 , 0.478431} ,
   {"LightSalmon2"            , "xee9572" , 0.933333 , 0.584314 , 0.447059} ,
   {"LightSalmon3"            , "xcd8162" , 0.803922 , 0.505882 , 0.384314} ,
   {"LightSalmon4"            , "x8b5742" , 0.545098 , 0.341176 , 0.258824} ,
   {"LightSeaGreen"           , "x20b2aa" , 0.125490 , 0.698039 , 0.666667} ,
   {"LightSkyBlue"            , "x87cefa" , 0.529412 , 0.807843 , 0.980392} ,
   {"LightSkyBlue1"           , "xb0e2ff" , 0.690196 , 0.886275 , 1.000000} ,
   {"LightSkyBlue2"           , "xa4d3ee" , 0.643137 , 0.827451 , 0.933333} ,
   {"LightSkyBlue3"           , "x8db6cd" , 0.552941 , 0.713725 , 0.803922} ,
   {"LightSkyBlue4"           , "x607b8b" , 0.376471 , 0.482353 , 0.545098} ,
   {"LightSlateBlue"          , "x8470ff" , 0.517647 , 0.439216 , 1.000000} ,
   {"LightSlateGray"          , "x778899" , 0.466667 , 0.533333 , 0.600000} ,
   {"LightSlateGrey"          , "x778899" , 0.466667 , 0.533333 , 0.600000} ,
   {"LightSteelBlue"          , "xb0c4de" , 0.690196 , 0.768627 , 0.870588} ,
   {"LightSteelBlue1"         , "xcae1ff" , 0.792157 , 0.882353 , 1.000000} ,
   {"LightSteelBlue2"         , "xbcd2ee" , 0.737255 , 0.823529 , 0.933333} ,
   {"LightSteelBlue3"         , "xa2b5cd" , 0.635294 , 0.709804 , 0.803922} ,
   {"LightSteelBlue4"         , "x6e7b8b" , 0.431373 , 0.482353 , 0.545098} ,
   {"LightYellow"             , "xffffe0" , 1.000000 , 1.000000 , 0.878431} ,
   {"LightYellow1"            , "xffffe0" , 1.000000 , 1.000000 , 0.878431} ,
   {"LightYellow2"            , "xeeeed1" , 0.933333 , 0.933333 , 0.819608} ,
   {"LightYellow3"            , "xcdcdb4" , 0.803922 , 0.803922 , 0.705882} ,
   {"LightYellow4"            , "x8b8b7a" , 0.545098 , 0.545098 , 0.478431} ,
   {"LimeGreen"               , "x32cd32" , 0.196078 , 0.803922 , 0.196078} ,
   {"MediumAquamarine"        , "x66cdaa" , 0.400000 , 0.803922 , 0.666667} ,
   {"MediumBlue"              , "x0000cd" , 0.000000 , 0.000000 , 0.803922} ,
   {"MediumOrchid"            , "xba55d3" , 0.729412 , 0.333333 , 0.827451} ,
   {"MediumOrchid1"           , "xe066ff" , 0.878431 , 0.400000 , 1.000000} ,
   {"MediumOrchid2"           , "xd15fee" , 0.819608 , 0.372549 , 0.933333} ,
   {"MediumOrchid3"           , "xb452cd" , 0.705882 , 0.321569 , 0.803922} ,
   {"MediumOrchid4"           , "x7a378b" , 0.478431 , 0.215686 , 0.545098} ,
   {"MediumPurple"            , "x9370db" , 0.576471 , 0.439216 , 0.858824} ,
   {"MediumPurple1"           , "xab82ff" , 0.670588 , 0.509804 , 1.000000} ,
   {"MediumPurple2"           , "x9f79ee" , 0.623529 , 0.474510 , 0.933333} ,
   {"MediumPurple3"           , "x8968cd" , 0.537255 , 0.407843 , 0.803922} ,
   {"MediumPurple4"           , "x5d478b" , 0.364706 , 0.278431 , 0.545098} ,
   {"MediumSeaGreen"          , "x3cb371" , 0.235294 , 0.701961 , 0.443137} ,
   {"MediumSlateBlue"         , "x7b68ee" , 0.482353 , 0.407843 , 0.933333} ,
   {"MediumSpringGreen"       , "x00fa9a" , 0.000000 , 0.980392 , 0.603922} ,
   {"MediumTurquoise"         , "x48d1cc" , 0.282353 , 0.819608 , 0.800000} ,
   {"MediumVioletRed"         , "xc71585" , 0.780392 , 0.082353 , 0.521569} ,
   {"MidnightBlue"            , "x191970" , 0.098039 , 0.098039 , 0.439216} ,
   {"MintCream"               , "xf5fffa" , 0.960784 , 1.000000 , 0.980392} ,
   {"MistyRose"               , "xffe4e1" , 1.000000 , 0.894118 , 0.882353} ,
   {"MistyRose1"              , "xffe4e1" , 1.000000 , 0.894118 , 0.882353} ,
   {"MistyRose2"              , "xeed5d2" , 0.933333 , 0.835294 , 0.823529} ,
   {"MistyRose3"              , "xcdb7b5" , 0.803922 , 0.717647 , 0.709804} ,
   {"MistyRose4"              , "x8b7d7b" , 0.545098 , 0.490196 , 0.482353} ,
   {"NavajoWhite"             , "xffdead" , 1.000000 , 0.870588 , 0.678431} ,
   {"NavajoWhite1"            , "xffdead" , 1.000000 , 0.870588 , 0.678431} ,
   {"NavajoWhite2"            , "xeecfa1" , 0.933333 , 0.811765 , 0.631373} ,
   {"NavajoWhite3"            , "xcdb38b" , 0.803922 , 0.701961 , 0.545098} ,
   {"NavajoWhite4"            , "x8b795e" , 0.545098 , 0.474510 , 0.368627} ,
   {"NavyBlue"                , "x000080" , 0.000000 , 0.000000 , 0.501961} ,
   {"OldLace"                 , "xfdf5e6" , 0.992157 , 0.960784 , 0.901961} ,
   {"OliveDrab"               , "x6b8e23" , 0.419608 , 0.556863 , 0.137255} ,
   {"OliveDrab1"              , "xc0ff3e" , 0.752941 , 1.000000 , 0.243137} ,
   {"OliveDrab2"              , "xb3ee3a" , 0.701961 , 0.933333 , 0.227451} ,
   {"OliveDrab3"              , "x9acd32" , 0.603922 , 0.803922 , 0.196078} ,
   {"OliveDrab4"              , "x698b22" , 0.411765 , 0.545098 , 0.133333} ,
   {"OrangeRed"               , "xff4500" , 1.000000 , 0.270588 , 0.000000} ,
   {"OrangeRed1"              , "xff4500" , 1.000000 , 0.270588 , 0.000000} ,
   {"OrangeRed2"              , "xee4000" , 0.933333 , 0.250980 , 0.000000} ,
   {"OrangeRed3"              , "xcd3700" , 0.803922 , 0.215686 , 0.000000} ,
   {"OrangeRed4"              , "x8b2500" , 0.545098 , 0.145098 , 0.000000} ,
   {"PaleGoldenrod"           , "xeee8aa" , 0.933333 , 0.909804 , 0.666667} ,
   {"PaleGreen"               , "x98fb98" , 0.596078 , 0.984314 , 0.596078} ,
   {"PaleGreen1"              , "x9aff9a" , 0.603922 , 1.000000 , 0.603922} ,
   {"PaleGreen2"              , "x90ee90" , 0.564706 , 0.933333 , 0.564706} ,
   {"PaleGreen3"              , "x7ccd7c" , 0.486275 , 0.803922 , 0.486275} ,
   {"PaleGreen4"              , "x548b54" , 0.329412 , 0.545098 , 0.329412} ,
   {"PaleTurquoise"           , "xafeeee" , 0.686275 , 0.933333 , 0.933333} ,
   {"PaleTurquoise1"          , "xbbffff" , 0.733333 , 1.000000 , 1.000000} ,
   {"PaleTurquoise2"          , "xaeeeee" , 0.682353 , 0.933333 , 0.933333} ,
   {"PaleTurquoise3"          , "x96cdcd" , 0.588235 , 0.803922 , 0.803922} ,
   {"PaleTurquoise4"          , "x668b8b" , 0.400000 , 0.545098 , 0.545098} ,
   {"PaleVioletRed"           , "xdb7093" , 0.858824 , 0.439216 , 0.576471} ,
   {"PaleVioletRed1"          , "xff82ab" , 1.000000 , 0.509804 , 0.670588} ,
   {"PaleVioletRed2"          , "xee799f" , 0.933333 , 0.474510 , 0.623529} ,
   {"PaleVioletRed3"          , "xcd6889" , 0.803922 , 0.407843 , 0.537255} ,
   {"PaleVioletRed4"          , "x8b475d" , 0.545098 , 0.278431 , 0.364706} ,
   {"PapayaWhip"              , "xffefd5" , 1.000000 , 0.937255 , 0.835294} ,
   {"PeachPuff"               , "xffdab9" , 1.000000 , 0.854902 , 0.725490} ,
   {"PeachPuff1"              , "xffdab9" , 1.000000 , 0.854902 , 0.725490} ,
   {"PeachPuff2"              , "xeecbad" , 0.933333 , 0.796078 , 0.678431} ,
   {"PeachPuff3"              , "xcdaf95" , 0.803922 , 0.686275 , 0.584314} ,
   {"PeachPuff4"              , "x8b7765" , 0.545098 , 0.466667 , 0.396078} ,
   {"PowderBlue"              , "xb0e0e6" , 0.690196 , 0.878431 , 0.901961} ,
   {"RosyBrown"               , "xbc8f8f" , 0.737255 , 0.560784 , 0.560784} ,
   {"RosyBrown1"              , "xffc1c1" , 1.000000 , 0.756863 , 0.756863} ,
   {"RosyBrown2"              , "xeeb4b4" , 0.933333 , 0.705882 , 0.705882} ,
   {"RosyBrown3"              , "xcd9b9b" , 0.803922 , 0.607843 , 0.607843} ,
   {"RosyBrown4"              , "x8b6969" , 0.545098 , 0.411765 , 0.411765} ,
   {"RoyalBlue"               , "x4169e1" , 0.254902 , 0.411765 , 0.882353} ,
   {"RoyalBlue1"              , "x4876ff" , 0.282353 , 0.462745 , 1.000000} ,
   {"RoyalBlue2"              , "x436eee" , 0.262745 , 0.431373 , 0.933333} ,
   {"RoyalBlue3"              , "x3a5fcd" , 0.227451 , 0.372549 , 0.803922} ,
   {"RoyalBlue4"              , "x27408b" , 0.152941 , 0.250980 , 0.545098} ,
   {"SaddleBrown"             , "x8b4513" , 0.545098 , 0.270588 , 0.074510} ,
   {"SandyBrown"              , "xf4a460" , 0.956863 , 0.643137 , 0.376471} ,
   {"SeaGreen"                , "x2e8b57" , 0.180392 , 0.545098 , 0.341176} ,
   {"SeaGreen1"               , "x54ff9f" , 0.329412 , 1.000000 , 0.623529} ,
   {"SeaGreen2"               , "x4eee94" , 0.305882 , 0.933333 , 0.580392} ,
   {"SeaGreen3"               , "x43cd80" , 0.262745 , 0.803922 , 0.501961} ,
   {"SeaGreen4"               , "x2e8b57" , 0.180392 , 0.545098 , 0.341176} ,
   {"SkyBlue"                 , "x87ceeb" , 0.529412 , 0.807843 , 0.921569} ,
   {"SkyBlue1"                , "x87ceff" , 0.529412 , 0.807843 , 1.000000} ,
   {"SkyBlue2"                , "x7ec0ee" , 0.494118 , 0.752941 , 0.933333} ,
   {"SkyBlue3"                , "x6ca6cd" , 0.423529 , 0.650980 , 0.803922} ,
   {"SkyBlue4"                , "x4a708b" , 0.290196 , 0.439216 , 0.545098} ,
   {"SlateBlue"               , "x6a5acd" , 0.415686 , 0.352941 , 0.803922} ,
   {"SlateBlue1"              , "x836fff" , 0.513725 , 0.435294 , 1.000000} ,
   {"SlateBlue2"              , "x7a67ee" , 0.478431 , 0.403922 , 0.933333} ,
   {"SlateBlue3"              , "x6959cd" , 0.411765 , 0.349020 , 0.803922} ,
   {"SlateBlue4"              , "x473c8b" , 0.278431 , 0.235294 , 0.545098} ,
   {"SlateGray"               , "x708090" , 0.439216 , 0.501961 , 0.564706} ,
   {"SlateGray1"              , "xc6e2ff" , 0.776471 , 0.886275 , 1.000000} ,
   {"SlateGray2"              , "xb9d3ee" , 0.725490 , 0.827451 , 0.933333} ,
   {"SlateGray3"              , "x9fb6cd" , 0.623529 , 0.713725 , 0.803922} ,
   {"SlateGray4"              , "x6c7b8b" , 0.423529 , 0.482353 , 0.545098} ,
   {"SlateGrey"               , "x708090" , 0.439216 , 0.501961 , 0.564706} ,
   {"SpringGreen"             , "x00ff7f" , 0.000000 , 1.000000 , 0.498039} ,
   {"SpringGreen1"            , "x00ff7f" , 0.000000 , 1.000000 , 0.498039} ,
   {"SpringGreen2"            , "x00ee76" , 0.000000 , 0.933333 , 0.462745} ,
   {"SpringGreen3"            , "x00cd66" , 0.000000 , 0.803922 , 0.400000} ,
   {"SpringGreen4"            , "x008b45" , 0.000000 , 0.545098 , 0.270588} ,
   {"SteelBlue"               , "x4682b4" , 0.274510 , 0.509804 , 0.705882} ,
   {"SteelBlue1"              , "x63b8ff" , 0.388235 , 0.721569 , 1.000000} ,
   {"SteelBlue2"              , "x5cacee" , 0.360784 , 0.674510 , 0.933333} ,
   {"SteelBlue3"              , "x4f94cd" , 0.309804 , 0.580392 , 0.803922} ,
   {"SteelBlue4"              , "x36648b" , 0.211765 , 0.392157 , 0.545098} ,
   {"VioletRed"               , "xd02090" , 0.815686 , 0.125490 , 0.564706} ,
   {"VioletRed1"              , "xff3e96" , 1.000000 , 0.243137 , 0.588235} ,
   {"VioletRed2"              , "xee3a8c" , 0.933333 , 0.227451 , 0.549020} ,
   {"VioletRed3"              , "xcd3278" , 0.803922 , 0.196078 , 0.470588} ,
   {"VioletRed4"              , "x8b2252" , 0.545098 , 0.133333 , 0.321569} ,
   {"WhiteSmoke"              , "xf5f5f5" , 0.960784 , 0.960784 , 0.960784} ,
   {"YellowGreen"             , "x9acd32" , 0.603922 , 0.803922 , 0.196078} ,
   {"alice blue"              , "xf0f8ff" , 0.941176 , 0.972549 , 1.000000} ,
   {"antique white"           , "xfaebd7" , 0.980392 , 0.921569 , 0.843137} ,
   {"aquamarine"              , "x7fffd4" , 0.498039 , 1.000000 , 0.831373} ,
   {"aquamarine1"             , "x7fffd4" , 0.498039 , 1.000000 , 0.831373} ,
   {"aquamarine2"             , "x76eec6" , 0.462745 , 0.933333 , 0.776471} ,
   {"aquamarine3"             , "x66cdaa" , 0.400000 , 0.803922 , 0.666667} ,
   {"aquamarine4"             , "x458b74" , 0.270588 , 0.545098 , 0.454902} ,
   {"azure"                   , "xf0ffff" , 0.941176 , 1.000000 , 1.000000} ,
   {"azure1"                  , "xf0ffff" , 0.941176 , 1.000000 , 1.000000} ,
   {"azure2"                  , "xe0eeee" , 0.878431 , 0.933333 , 0.933333} ,
   {"azure3"                  , "xc1cdcd" , 0.756863 , 0.803922 , 0.803922} ,
   {"azure4"                  , "x838b8b" , 0.513725 , 0.545098 , 0.545098} ,
   {"beige"                   , "xf5f5dc" , 0.960784 , 0.960784 , 0.862745} ,
   {"bisque"                  , "xffe4c4" , 1.000000 , 0.894118 , 0.768627} ,
   {"bisque1"                 , "xffe4c4" , 1.000000 , 0.894118 , 0.768627} ,
   {"bisque2"                 , "xeed5b7" , 0.933333 , 0.835294 , 0.717647} ,
   {"bisque3"                 , "xcdb79e" , 0.803922 , 0.717647 , 0.619608} ,
   {"bisque4"                 , "x8b7d6b" , 0.545098 , 0.490196 , 0.419608} ,
   {"black"                   , "x000000" , 0.000000 , 0.000000 , 0.000000} ,
   {"blanched almond"         , "xffebcd" , 1.000000 , 0.921569 , 0.803922} ,
   {"blue violet"             , "x8a2be2" , 0.541176 , 0.168627 , 0.886275} ,
   {"blue"                    , "x0000ff" , 0.000000 , 0.000000 , 1.000000} ,
   {"blue1"                   , "x0000ff" , 0.000000 , 0.000000 , 1.000000} ,
   {"blue2"                   , "x0000ee" , 0.000000 , 0.000000 , 0.933333} ,
   {"blue3"                   , "x0000cd" , 0.000000 , 0.000000 , 0.803922} ,
   {"blue4"                   , "x00008b" , 0.000000 , 0.000000 , 0.545098} ,
   {"brown"                   , "xa52a2a" , 0.647059 , 0.164706 , 0.164706} ,
   {"brown1"                  , "xff4040" , 1.000000 , 0.250980 , 0.250980} ,
   {"brown2"                  , "xee3b3b" , 0.933333 , 0.231373 , 0.231373} ,
   {"brown3"                  , "xcd3333" , 0.803922 , 0.200000 , 0.200000} ,
   {"brown4"                  , "x8b2323" , 0.545098 , 0.137255 , 0.137255} ,
   {"burlywood"               , "xdeb887" , 0.870588 , 0.721569 , 0.529412} ,
   {"burlywood1"              , "xffd39b" , 1.000000 , 0.827451 , 0.607843} ,
   {"burlywood2"              , "xeec591" , 0.933333 , 0.772549 , 0.568627} ,
   {"burlywood3"              , "xcdaa7d" , 0.803922 , 0.666667 , 0.490196} ,
   {"burlywood4"              , "x8b7355" , 0.545098 , 0.450980 , 0.333333} ,
   {"cadet blue"              , "x5f9ea0" , 0.372549 , 0.619608 , 0.627451} ,
   {"chartreuse"              , "x7fff00" , 0.498039 , 1.000000 , 0.000000} ,
   {"chartreuse1"             , "x7fff00" , 0.498039 , 1.000000 , 0.000000} ,
   {"chartreuse2"             , "x76ee00" , 0.462745 , 0.933333 , 0.000000} ,
   {"chartreuse3"             , "x66cd00" , 0.400000 , 0.803922 , 0.000000} ,
   {"chartreuse4"             , "x458b00" , 0.270588 , 0.545098 , 0.000000} ,
   {"chocolate"               , "xd2691e" , 0.823529 , 0.411765 , 0.117647} ,
   {"chocolate1"              , "xff7f24" , 1.000000 , 0.498039 , 0.141176} ,
   {"chocolate2"              , "xee7621" , 0.933333 , 0.462745 , 0.129412} ,
   {"chocolate3"              , "xcd661d" , 0.803922 , 0.400000 , 0.113725} ,
   {"chocolate4"              , "x8b4513" , 0.545098 , 0.270588 , 0.074510} ,
   {"coral"                   , "xff7f50" , 1.000000 , 0.498039 , 0.313725} ,
   {"coral1"                  , "xff7256" , 1.000000 , 0.447059 , 0.337255} ,
   {"coral2"                  , "xee6a50" , 0.933333 , 0.415686 , 0.313725} ,
   {"coral3"                  , "xcd5b45" , 0.803922 , 0.356863 , 0.270588} ,
   {"coral4"                  , "x8b3e2f" , 0.545098 , 0.243137 , 0.184314} ,
   {"cornflower blue"         , "x6495ed" , 0.392157 , 0.584314 , 0.929412} ,
   {"cornsilk"                , "xfff8dc" , 1.000000 , 0.972549 , 0.862745} ,
   {"cornsilk1"               , "xfff8dc" , 1.000000 , 0.972549 , 0.862745} ,
   {"cornsilk2"               , "xeee8cd" , 0.933333 , 0.909804 , 0.803922} ,
   {"cornsilk3"               , "xcdc8b1" , 0.803922 , 0.784314 , 0.694118} ,
   {"cornsilk4"               , "x8b8878" , 0.545098 , 0.533333 , 0.470588} ,
   {"cyan"                    , "x00ffff" , 0.000000 , 1.000000 , 1.000000} ,
   {"cyan1"                   , "x00ffff" , 0.000000 , 1.000000 , 1.000000} ,
   {"cyan2"                   , "x00eeee" , 0.000000 , 0.933333 , 0.933333} ,
   {"cyan3"                   , "x00cdcd" , 0.000000 , 0.803922 , 0.803922} ,
   {"cyan4"                   , "x008b8b" , 0.000000 , 0.545098 , 0.545098} ,
   {"dark blue"               , "x00008b" , 0.000000 , 0.000000 , 0.545098} ,
   {"dark cyan"               , "x008b8b" , 0.000000 , 0.545098 , 0.545098} ,
   {"dark goldenrod"          , "xb8860b" , 0.721569 , 0.525490 , 0.043137} ,
   {"dark gray"               , "xa9a9a9" , 0.662745 , 0.662745 , 0.662745} ,
   {"dark green"              , "x006400" , 0.000000 , 0.392157 , 0.000000} ,
   {"dark grey"               , "xa9a9a9" , 0.662745 , 0.662745 , 0.662745} ,
   {"dark khaki"              , "xbdb76b" , 0.741176 , 0.717647 , 0.419608} ,
   {"dark magenta"            , "x8b008b" , 0.545098 , 0.000000 , 0.545098} ,
   {"dark olive green"        , "x556b2f" , 0.333333 , 0.419608 , 0.184314} ,
   {"dark orange"             , "xff8c00" , 1.000000 , 0.549020 , 0.000000} ,
   {"dark orchid"             , "x9932cc" , 0.600000 , 0.196078 , 0.800000} ,
   {"dark red"                , "x8b0000" , 0.545098 , 0.000000 , 0.000000} ,
   {"dark salmon"             , "xe9967a" , 0.913725 , 0.588235 , 0.478431} ,
   {"dark sea green"          , "x8fbc8f" , 0.560784 , 0.737255 , 0.560784} ,
   {"dark slate blue"         , "x483d8b" , 0.282353 , 0.239216 , 0.545098} ,
   {"dark slate gray"         , "x2f4f4f" , 0.184314 , 0.309804 , 0.309804} ,
   {"dark slate grey"         , "x2f4f4f" , 0.184314 , 0.309804 , 0.309804} ,
   {"dark turquoise"          , "x00ced1" , 0.000000 , 0.807843 , 0.819608} ,
   {"dark violet"             , "x9400d3" , 0.580392 , 0.000000 , 0.827451} ,
   {"deep pink"               , "xff1493" , 1.000000 , 0.078431 , 0.576471} ,
   {"deep sky blue"           , "x00bfff" , 0.000000 , 0.749020 , 1.000000} ,
   {"dim gray"                , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"dim grey"                , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"dodger blue"             , "x1e90ff" , 0.117647 , 0.564706 , 1.000000} ,
   {"firebrick"               , "xb22222" , 0.698039 , 0.133333 , 0.133333} ,
   {"firebrick1"              , "xff3030" , 1.000000 , 0.188235 , 0.188235} ,
   {"firebrick2"              , "xee2c2c" , 0.933333 , 0.172549 , 0.172549} ,
   {"firebrick3"              , "xcd2626" , 0.803922 , 0.149020 , 0.149020} ,
   {"firebrick4"              , "x8b1a1a" , 0.545098 , 0.101961 , 0.101961} ,
   {"floral white"            , "xfffaf0" , 1.000000 , 0.980392 , 0.941176} ,
   {"forest green"            , "x228b22" , 0.133333 , 0.545098 , 0.133333} ,
   {"gainsboro"               , "xdcdcdc" , 0.862745 , 0.862745 , 0.862745} ,
   {"ghost white"             , "xf8f8ff" , 0.972549 , 0.972549 , 1.000000} ,
   {"gold"                    , "xffd700" , 1.000000 , 0.843137 , 0.000000} ,
   {"gold1"                   , "xffd700" , 1.000000 , 0.843137 , 0.000000} ,
   {"gold2"                   , "xeec900" , 0.933333 , 0.788235 , 0.000000} ,
   {"gold3"                   , "xcdad00" , 0.803922 , 0.678431 , 0.000000} ,
   {"gold4"                   , "x8b7500" , 0.545098 , 0.458824 , 0.000000} ,
   {"goldenrod"               , "xdaa520" , 0.854902 , 0.647059 , 0.125490} ,
   {"goldenrod1"              , "xffc125" , 1.000000 , 0.756863 , 0.145098} ,
   {"goldenrod2"              , "xeeb422" , 0.933333 , 0.705882 , 0.133333} ,
   {"goldenrod3"              , "xcd9b1d" , 0.803922 , 0.607843 , 0.113725} ,
   {"goldenrod4"              , "x8b6914" , 0.545098 , 0.411765 , 0.078431} ,
   {"gray"                    , "xbebebe" , 0.745098 , 0.745098 , 0.745098} ,
   {"gray0"                   , "x000000" , 0.000000 , 0.000000 , 0.000000} ,
   {"gray1"                   , "x030303" , 0.011765 , 0.011765 , 0.011765} ,
   {"gray10"                  , "x1a1a1a" , 0.101961 , 0.101961 , 0.101961} ,
   {"gray100"                 , "xffffff" , 1.000000 , 1.000000 , 1.000000} ,
   {"gray11"                  , "x1c1c1c" , 0.109804 , 0.109804 , 0.109804} ,
   {"gray12"                  , "x1f1f1f" , 0.121569 , 0.121569 , 0.121569} ,
   {"gray13"                  , "x212121" , 0.129412 , 0.129412 , 0.129412} ,
   {"gray14"                  , "x242424" , 0.141176 , 0.141176 , 0.141176} ,
   {"gray15"                  , "x262626" , 0.149020 , 0.149020 , 0.149020} ,
   {"gray16"                  , "x292929" , 0.160784 , 0.160784 , 0.160784} ,
   {"gray17"                  , "x2b2b2b" , 0.168627 , 0.168627 , 0.168627} ,
   {"gray18"                  , "x2e2e2e" , 0.180392 , 0.180392 , 0.180392} ,
   {"gray19"                  , "x303030" , 0.188235 , 0.188235 , 0.188235} ,
   {"gray2"                   , "x050505" , 0.019608 , 0.019608 , 0.019608} ,
   {"gray20"                  , "x333333" , 0.200000 , 0.200000 , 0.200000} ,
   {"gray21"                  , "x363636" , 0.211765 , 0.211765 , 0.211765} ,
   {"gray22"                  , "x383838" , 0.219608 , 0.219608 , 0.219608} ,
   {"gray23"                  , "x3b3b3b" , 0.231373 , 0.231373 , 0.231373} ,
   {"gray24"                  , "x3d3d3d" , 0.239216 , 0.239216 , 0.239216} ,
   {"gray25"                  , "x404040" , 0.250980 , 0.250980 , 0.250980} ,
   {"gray26"                  , "x424242" , 0.258824 , 0.258824 , 0.258824} ,
   {"gray27"                  , "x454545" , 0.270588 , 0.270588 , 0.270588} ,
   {"gray28"                  , "x474747" , 0.278431 , 0.278431 , 0.278431} ,
   {"gray29"                  , "x4a4a4a" , 0.290196 , 0.290196 , 0.290196} ,
   {"gray3"                   , "x080808" , 0.031373 , 0.031373 , 0.031373} ,
   {"gray30"                  , "x4d4d4d" , 0.301961 , 0.301961 , 0.301961} ,
   {"gray31"                  , "x4f4f4f" , 0.309804 , 0.309804 , 0.309804} ,
   {"gray32"                  , "x525252" , 0.321569 , 0.321569 , 0.321569} ,
   {"gray33"                  , "x545454" , 0.329412 , 0.329412 , 0.329412} ,
   {"gray34"                  , "x575757" , 0.341176 , 0.341176 , 0.341176} ,
   {"gray35"                  , "x595959" , 0.349020 , 0.349020 , 0.349020} ,
   {"gray36"                  , "x5c5c5c" , 0.360784 , 0.360784 , 0.360784} ,
   {"gray37"                  , "x5e5e5e" , 0.368627 , 0.368627 , 0.368627} ,
   {"gray38"                  , "x616161" , 0.380392 , 0.380392 , 0.380392} ,
   {"gray39"                  , "x636363" , 0.388235 , 0.388235 , 0.388235} ,
   {"gray4"                   , "x0a0a0a" , 0.039216 , 0.039216 , 0.039216} ,
   {"gray40"                  , "x666666" , 0.400000 , 0.400000 , 0.400000} ,
   {"gray41"                  , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"gray42"                  , "x6b6b6b" , 0.419608 , 0.419608 , 0.419608} ,
   {"gray43"                  , "x6e6e6e" , 0.431373 , 0.431373 , 0.431373} ,
   {"gray44"                  , "x707070" , 0.439216 , 0.439216 , 0.439216} ,
   {"gray45"                  , "x737373" , 0.450980 , 0.450980 , 0.450980} ,
   {"gray46"                  , "x757575" , 0.458824 , 0.458824 , 0.458824} ,
   {"gray47"                  , "x787878" , 0.470588 , 0.470588 , 0.470588} ,
   {"gray48"                  , "x7a7a7a" , 0.478431 , 0.478431 , 0.478431} ,
   {"gray49"                  , "x7d7d7d" , 0.490196 , 0.490196 , 0.490196} ,
   {"gray5"                   , "x0d0d0d" , 0.050980 , 0.050980 , 0.050980} ,
   {"gray50"                  , "x7f7f7f" , 0.498039 , 0.498039 , 0.498039} ,
   {"gray51"                  , "x828282" , 0.509804 , 0.509804 , 0.509804} ,
   {"gray52"                  , "x858585" , 0.521569 , 0.521569 , 0.521569} ,
   {"gray53"                  , "x878787" , 0.529412 , 0.529412 , 0.529412} ,
   {"gray54"                  , "x8a8a8a" , 0.541176 , 0.541176 , 0.541176} ,
   {"gray55"                  , "x8c8c8c" , 0.549020 , 0.549020 , 0.549020} ,
   {"gray56"                  , "x8f8f8f" , 0.560784 , 0.560784 , 0.560784} ,
   {"gray57"                  , "x919191" , 0.568627 , 0.568627 , 0.568627} ,
   {"gray58"                  , "x949494" , 0.580392 , 0.580392 , 0.580392} ,
   {"gray59"                  , "x969696" , 0.588235 , 0.588235 , 0.588235} ,
   {"gray6"                   , "x0f0f0f" , 0.058824 , 0.058824 , 0.058824} ,
   {"gray60"                  , "x999999" , 0.600000 , 0.600000 , 0.600000} ,
   {"gray61"                  , "x9c9c9c" , 0.611765 , 0.611765 , 0.611765} ,
   {"gray62"                  , "x9e9e9e" , 0.619608 , 0.619608 , 0.619608} ,
   {"gray63"                  , "xa1a1a1" , 0.631373 , 0.631373 , 0.631373} ,
   {"gray64"                  , "xa3a3a3" , 0.639216 , 0.639216 , 0.639216} ,
   {"gray65"                  , "xa6a6a6" , 0.650980 , 0.650980 , 0.650980} ,
   {"gray66"                  , "xa8a8a8" , 0.658824 , 0.658824 , 0.658824} ,
   {"gray67"                  , "xababab" , 0.670588 , 0.670588 , 0.670588} ,
   {"gray68"                  , "xadadad" , 0.678431 , 0.678431 , 0.678431} ,
   {"gray69"                  , "xb0b0b0" , 0.690196 , 0.690196 , 0.690196} ,
   {"gray7"                   , "x121212" , 0.070588 , 0.070588 , 0.070588} ,
   {"gray70"                  , "xb3b3b3" , 0.701961 , 0.701961 , 0.701961} ,
   {"gray71"                  , "xb5b5b5" , 0.709804 , 0.709804 , 0.709804} ,
   {"gray72"                  , "xb8b8b8" , 0.721569 , 0.721569 , 0.721569} ,
   {"gray73"                  , "xbababa" , 0.729412 , 0.729412 , 0.729412} ,
   {"gray74"                  , "xbdbdbd" , 0.741176 , 0.741176 , 0.741176} ,
   {"gray75"                  , "xbfbfbf" , 0.749020 , 0.749020 , 0.749020} ,
   {"gray76"                  , "xc2c2c2" , 0.760784 , 0.760784 , 0.760784} ,
   {"gray77"                  , "xc4c4c4" , 0.768627 , 0.768627 , 0.768627} ,
   {"gray78"                  , "xc7c7c7" , 0.780392 , 0.780392 , 0.780392} ,
   {"gray79"                  , "xc9c9c9" , 0.788235 , 0.788235 , 0.788235} ,
   {"gray8"                   , "x141414" , 0.078431 , 0.078431 , 0.078431} ,
   {"gray80"                  , "xcccccc" , 0.800000 , 0.800000 , 0.800000} ,
   {"gray81"                  , "xcfcfcf" , 0.811765 , 0.811765 , 0.811765} ,
   {"gray82"                  , "xd1d1d1" , 0.819608 , 0.819608 , 0.819608} ,
   {"gray83"                  , "xd4d4d4" , 0.831373 , 0.831373 , 0.831373} ,
   {"gray84"                  , "xd6d6d6" , 0.839216 , 0.839216 , 0.839216} ,
   {"gray85"                  , "xd9d9d9" , 0.850980 , 0.850980 , 0.850980} ,
   {"gray86"                  , "xdbdbdb" , 0.858824 , 0.858824 , 0.858824} ,
   {"gray87"                  , "xdedede" , 0.870588 , 0.870588 , 0.870588} ,
   {"gray88"                  , "xe0e0e0" , 0.878431 , 0.878431 , 0.878431} ,
   {"gray89"                  , "xe3e3e3" , 0.890196 , 0.890196 , 0.890196} ,
   {"gray9"                   , "x171717" , 0.090196 , 0.090196 , 0.090196} ,
   {"gray90"                  , "xe5e5e5" , 0.898039 , 0.898039 , 0.898039} ,
   {"gray91"                  , "xe8e8e8" , 0.909804 , 0.909804 , 0.909804} ,
   {"gray92"                  , "xebebeb" , 0.921569 , 0.921569 , 0.921569} ,
   {"gray93"                  , "xededed" , 0.929412 , 0.929412 , 0.929412} ,
   {"gray94"                  , "xf0f0f0" , 0.941176 , 0.941176 , 0.941176} ,
   {"gray95"                  , "xf2f2f2" , 0.949020 , 0.949020 , 0.949020} ,
   {"gray96"                  , "xf5f5f5" , 0.960784 , 0.960784 , 0.960784} ,
   {"gray97"                  , "xf7f7f7" , 0.968627 , 0.968627 , 0.968627} ,
   {"gray98"                  , "xfafafa" , 0.980392 , 0.980392 , 0.980392} ,
   {"gray99"                  , "xfcfcfc" , 0.988235 , 0.988235 , 0.988235} ,
   {"green yellow"            , "xadff2f" , 0.678431 , 1.000000 , 0.184314} ,
   {"green"                   , "x00ff00" , 0.000000 , 1.000000 , 0.000000} ,
   {"green1"                  , "x00ff00" , 0.000000 , 1.000000 , 0.000000} ,
   {"green2"                  , "x00ee00" , 0.000000 , 0.933333 , 0.000000} ,
   {"green3"                  , "x00cd00" , 0.000000 , 0.803922 , 0.000000} ,
   {"green4"                  , "x008b00" , 0.000000 , 0.545098 , 0.000000} ,
   {"grey"                    , "xbebebe" , 0.745098 , 0.745098 , 0.745098} ,
   {"grey0"                   , "x000000" , 0.000000 , 0.000000 , 0.000000} ,
   {"grey1"                   , "x030303" , 0.011765 , 0.011765 , 0.011765} ,
   {"grey10"                  , "x1a1a1a" , 0.101961 , 0.101961 , 0.101961} ,
   {"grey100"                 , "xffffff" , 1.000000 , 1.000000 , 1.000000} ,
   {"grey11"                  , "x1c1c1c" , 0.109804 , 0.109804 , 0.109804} ,
   {"grey12"                  , "x1f1f1f" , 0.121569 , 0.121569 , 0.121569} ,
   {"grey13"                  , "x212121" , 0.129412 , 0.129412 , 0.129412} ,
   {"grey14"                  , "x242424" , 0.141176 , 0.141176 , 0.141176} ,
   {"grey15"                  , "x262626" , 0.149020 , 0.149020 , 0.149020} ,
   {"grey16"                  , "x292929" , 0.160784 , 0.160784 , 0.160784} ,
   {"grey17"                  , "x2b2b2b" , 0.168627 , 0.168627 , 0.168627} ,
   {"grey18"                  , "x2e2e2e" , 0.180392 , 0.180392 , 0.180392} ,
   {"grey19"                  , "x303030" , 0.188235 , 0.188235 , 0.188235} ,
   {"grey2"                   , "x050505" , 0.019608 , 0.019608 , 0.019608} ,
   {"grey20"                  , "x333333" , 0.200000 , 0.200000 , 0.200000} ,
   {"grey21"                  , "x363636" , 0.211765 , 0.211765 , 0.211765} ,
   {"grey22"                  , "x383838" , 0.219608 , 0.219608 , 0.219608} ,
   {"grey23"                  , "x3b3b3b" , 0.231373 , 0.231373 , 0.231373} ,
   {"grey24"                  , "x3d3d3d" , 0.239216 , 0.239216 , 0.239216} ,
   {"grey25"                  , "x404040" , 0.250980 , 0.250980 , 0.250980} ,
   {"grey26"                  , "x424242" , 0.258824 , 0.258824 , 0.258824} ,
   {"grey27"                  , "x454545" , 0.270588 , 0.270588 , 0.270588} ,
   {"grey28"                  , "x474747" , 0.278431 , 0.278431 , 0.278431} ,
   {"grey29"                  , "x4a4a4a" , 0.290196 , 0.290196 , 0.290196} ,
   {"grey3"                   , "x080808" , 0.031373 , 0.031373 , 0.031373} ,
   {"grey30"                  , "x4d4d4d" , 0.301961 , 0.301961 , 0.301961} ,
   {"grey31"                  , "x4f4f4f" , 0.309804 , 0.309804 , 0.309804} ,
   {"grey32"                  , "x525252" , 0.321569 , 0.321569 , 0.321569} ,
   {"grey33"                  , "x545454" , 0.329412 , 0.329412 , 0.329412} ,
   {"grey34"                  , "x575757" , 0.341176 , 0.341176 , 0.341176} ,
   {"grey35"                  , "x595959" , 0.349020 , 0.349020 , 0.349020} ,
   {"grey36"                  , "x5c5c5c" , 0.360784 , 0.360784 , 0.360784} ,
   {"grey37"                  , "x5e5e5e" , 0.368627 , 0.368627 , 0.368627} ,
   {"grey38"                  , "x616161" , 0.380392 , 0.380392 , 0.380392} ,
   {"grey39"                  , "x636363" , 0.388235 , 0.388235 , 0.388235} ,
   {"grey4"                   , "x0a0a0a" , 0.039216 , 0.039216 , 0.039216} ,
   {"grey40"                  , "x666666" , 0.400000 , 0.400000 , 0.400000} ,
   {"grey41"                  , "x696969" , 0.411765 , 0.411765 , 0.411765} ,
   {"grey42"                  , "x6b6b6b" , 0.419608 , 0.419608 , 0.419608} ,
   {"grey43"                  , "x6e6e6e" , 0.431373 , 0.431373 , 0.431373} ,
   {"grey44"                  , "x707070" , 0.439216 , 0.439216 , 0.439216} ,
   {"grey45"                  , "x737373" , 0.450980 , 0.450980 , 0.450980} ,
   {"grey46"                  , "x757575" , 0.458824 , 0.458824 , 0.458824} ,
   {"grey47"                  , "x787878" , 0.470588 , 0.470588 , 0.470588} ,
   {"grey48"                  , "x7a7a7a" , 0.478431 , 0.478431 , 0.478431} ,
   {"grey49"                  , "x7d7d7d" , 0.490196 , 0.490196 , 0.490196} ,
   {"grey5"                   , "x0d0d0d" , 0.050980 , 0.050980 , 0.050980} ,
   {"grey50"                  , "x7f7f7f" , 0.498039 , 0.498039 , 0.498039} ,
   {"grey51"                  , "x828282" , 0.509804 , 0.509804 , 0.509804} ,
   {"grey52"                  , "x858585" , 0.521569 , 0.521569 , 0.521569} ,
   {"grey53"                  , "x878787" , 0.529412 , 0.529412 , 0.529412} ,
   {"grey54"                  , "x8a8a8a" , 0.541176 , 0.541176 , 0.541176} ,
   {"grey55"                  , "x8c8c8c" , 0.549020 , 0.549020 , 0.549020} ,
   {"grey56"                  , "x8f8f8f" , 0.560784 , 0.560784 , 0.560784} ,
   {"grey57"                  , "x919191" , 0.568627 , 0.568627 , 0.568627} ,
   {"grey58"                  , "x949494" , 0.580392 , 0.580392 , 0.580392} ,
   {"grey59"                  , "x969696" , 0.588235 , 0.588235 , 0.588235} ,
   {"grey6"                   , "x0f0f0f" , 0.058824 , 0.058824 , 0.058824} ,
   {"grey60"                  , "x999999" , 0.600000 , 0.600000 , 0.600000} ,
   {"grey61"                  , "x9c9c9c" , 0.611765 , 0.611765 , 0.611765} ,
   {"grey62"                  , "x9e9e9e" , 0.619608 , 0.619608 , 0.619608} ,
   {"grey63"                  , "xa1a1a1" , 0.631373 , 0.631373 , 0.631373} ,
   {"grey64"                  , "xa3a3a3" , 0.639216 , 0.639216 , 0.639216} ,
   {"grey65"                  , "xa6a6a6" , 0.650980 , 0.650980 , 0.650980} ,
   {"grey66"                  , "xa8a8a8" , 0.658824 , 0.658824 , 0.658824} ,
   {"grey67"                  , "xababab" , 0.670588 , 0.670588 , 0.670588} ,
   {"grey68"                  , "xadadad" , 0.678431 , 0.678431 , 0.678431} ,
   {"grey69"                  , "xb0b0b0" , 0.690196 , 0.690196 , 0.690196} ,
   {"grey7"                   , "x121212" , 0.070588 , 0.070588 , 0.070588} ,
   {"grey70"                  , "xb3b3b3" , 0.701961 , 0.701961 , 0.701961} ,
   {"grey71"                  , "xb5b5b5" , 0.709804 , 0.709804 , 0.709804} ,
   {"grey72"                  , "xb8b8b8" , 0.721569 , 0.721569 , 0.721569} ,
   {"grey73"                  , "xbababa" , 0.729412 , 0.729412 , 0.729412} ,
   {"grey74"                  , "xbdbdbd" , 0.741176 , 0.741176 , 0.741176} ,
   {"grey75"                  , "xbfbfbf" , 0.749020 , 0.749020 , 0.749020} ,
   {"grey76"                  , "xc2c2c2" , 0.760784 , 0.760784 , 0.760784} ,
   {"grey77"                  , "xc4c4c4" , 0.768627 , 0.768627 , 0.768627} ,
   {"grey78"                  , "xc7c7c7" , 0.780392 , 0.780392 , 0.780392} ,
   {"grey79"                  , "xc9c9c9" , 0.788235 , 0.788235 , 0.788235} ,
   {"grey8"                   , "x141414" , 0.078431 , 0.078431 , 0.078431} ,
   {"grey80"                  , "xcccccc" , 0.800000 , 0.800000 , 0.800000} ,
   {"grey81"                  , "xcfcfcf" , 0.811765 , 0.811765 , 0.811765} ,
   {"grey82"                  , "xd1d1d1" , 0.819608 , 0.819608 , 0.819608} ,
   {"grey83"                  , "xd4d4d4" , 0.831373 , 0.831373 , 0.831373} ,
   {"grey84"                  , "xd6d6d6" , 0.839216 , 0.839216 , 0.839216} ,
   {"grey85"                  , "xd9d9d9" , 0.850980 , 0.850980 , 0.850980} ,
   {"grey86"                  , "xdbdbdb" , 0.858824 , 0.858824 , 0.858824} ,
   {"grey87"                  , "xdedede" , 0.870588 , 0.870588 , 0.870588} ,
   {"grey88"                  , "xe0e0e0" , 0.878431 , 0.878431 , 0.878431} ,
   {"grey89"                  , "xe3e3e3" , 0.890196 , 0.890196 , 0.890196} ,
   {"grey9"                   , "x171717" , 0.090196 , 0.090196 , 0.090196} ,
   {"grey90"                  , "xe5e5e5" , 0.898039 , 0.898039 , 0.898039} ,
   {"grey91"                  , "xe8e8e8" , 0.909804 , 0.909804 , 0.909804} ,
   {"grey92"                  , "xebebeb" , 0.921569 , 0.921569 , 0.921569} ,
   {"grey93"                  , "xededed" , 0.929412 , 0.929412 , 0.929412} ,
   {"grey94"                  , "xf0f0f0" , 0.941176 , 0.941176 , 0.941176} ,
   {"grey95"                  , "xf2f2f2" , 0.949020 , 0.949020 , 0.949020} ,
   {"grey96"                  , "xf5f5f5" , 0.960784 , 0.960784 , 0.960784} ,
   {"grey97"                  , "xf7f7f7" , 0.968627 , 0.968627 , 0.968627} ,
   {"grey98"                  , "xfafafa" , 0.980392 , 0.980392 , 0.980392} ,
   {"grey99"                  , "xfcfcfc" , 0.988235 , 0.988235 , 0.988235} ,
   {"honeydew"                , "xf0fff0" , 0.941176 , 1.000000 , 0.941176} ,
   {"honeydew1"               , "xf0fff0" , 0.941176 , 1.000000 , 0.941176} ,
   {"honeydew2"               , "xe0eee0" , 0.878431 , 0.933333 , 0.878431} ,
   {"honeydew3"               , "xc1cdc1" , 0.756863 , 0.803922 , 0.756863} ,
   {"honeydew4"               , "x838b83" , 0.513725 , 0.545098 , 0.513725} ,
   {"hot pink"                , "xff69b4" , 1.000000 , 0.411765 , 0.705882} ,
   {"indian red"              , "xcd5c5c" , 0.803922 , 0.360784 , 0.360784} ,
   {"ivory"                   , "xfffff0" , 1.000000 , 1.000000 , 0.941176} ,
   {"ivory1"                  , "xfffff0" , 1.000000 , 1.000000 , 0.941176} ,
   {"ivory2"                  , "xeeeee0" , 0.933333 , 0.933333 , 0.878431} ,
   {"ivory3"                  , "xcdcdc1" , 0.803922 , 0.803922 , 0.756863} ,
   {"ivory4"                  , "x8b8b83" , 0.545098 , 0.545098 , 0.513725} ,
   {"khaki"                   , "xf0e68c" , 0.941176 , 0.901961 , 0.549020} ,
   {"khaki1"                  , "xfff68f" , 1.000000 , 0.964706 , 0.560784} ,
   {"khaki2"                  , "xeee685" , 0.933333 , 0.901961 , 0.521569} ,
   {"khaki3"                  , "xcdc673" , 0.803922 , 0.776471 , 0.450980} ,
   {"khaki4"                  , "x8b864e" , 0.545098 , 0.525490 , 0.305882} ,
   {"lavender blush"          , "xfff0f5" , 1.000000 , 0.941176 , 0.960784} ,
   {"lavender"                , "xe6e6fa" , 0.901961 , 0.901961 , 0.980392} ,
   {"lawn green"              , "x7cfc00" , 0.486275 , 0.988235 , 0.000000} ,
   {"lemon chiffon"           , "xfffacd" , 1.000000 , 0.980392 , 0.803922} ,
   {"light blue"              , "xadd8e6" , 0.678431 , 0.847059 , 0.901961} ,
   {"light coral"             , "xf08080" , 0.941176 , 0.501961 , 0.501961} ,
   {"light cyan"              , "xe0ffff" , 0.878431 , 1.000000 , 1.000000} ,
   {"light goldenrod yellow"  , "xfafad2" , 0.980392 , 0.980392 , 0.823529} ,
   {"light goldenrod"         , "xeedd82" , 0.933333 , 0.866667 , 0.509804} ,
   {"light gray"              , "xd3d3d3" , 0.827451 , 0.827451 , 0.827451} ,
   {"light green"             , "x90ee90" , 0.564706 , 0.933333 , 0.564706} ,
   {"light grey"              , "xd3d3d3" , 0.827451 , 0.827451 , 0.827451} ,
   {"light pink"              , "xffb6c1" , 1.000000 , 0.713725 , 0.756863} ,
   {"light salmon"            , "xffa07a" , 1.000000 , 0.627451 , 0.478431} ,
   {"light sea green"         , "x20b2aa" , 0.125490 , 0.698039 , 0.666667} ,
   {"light sky blue"          , "x87cefa" , 0.529412 , 0.807843 , 0.980392} ,
   {"light slate blue"        , "x8470ff" , 0.517647 , 0.439216 , 1.000000} ,
   {"light slate gray"        , "x778899" , 0.466667 , 0.533333 , 0.600000} ,
   {"light slate grey"        , "x778899" , 0.466667 , 0.533333 , 0.600000} ,
   {"light steel blue"        , "xb0c4de" , 0.690196 , 0.768627 , 0.870588} ,
   {"light yellow"            , "xffffe0" , 1.000000 , 1.000000 , 0.878431} ,
   {"lime green"              , "x32cd32" , 0.196078 , 0.803922 , 0.196078} ,
   {"linen"                   , "xfaf0e6" , 0.980392 , 0.941176 , 0.901961} ,
   {"magenta"                 , "xff00ff" , 1.000000 , 0.000000 , 1.000000} ,
   {"magenta1"                , "xff00ff" , 1.000000 , 0.000000 , 1.000000} ,
   {"magenta2"                , "xee00ee" , 0.933333 , 0.000000 , 0.933333} ,
   {"magenta3"                , "xcd00cd" , 0.803922 , 0.000000 , 0.803922} ,
   {"magenta4"                , "x8b008b" , 0.545098 , 0.000000 , 0.545098} ,
   {"maroon"                  , "xb03060" , 0.690196 , 0.188235 , 0.376471} ,
   {"maroon1"                 , "xff34b3" , 1.000000 , 0.203922 , 0.701961} ,
   {"maroon2"                 , "xee30a7" , 0.933333 , 0.188235 , 0.654902} ,
   {"maroon3"                 , "xcd2990" , 0.803922 , 0.160784 , 0.564706} ,
   {"maroon4"                 , "x8b1c62" , 0.545098 , 0.109804 , 0.384314} ,
   {"medium aquamarine"       , "x66cdaa" , 0.400000 , 0.803922 , 0.666667} ,
   {"medium blue"             , "x0000cd" , 0.000000 , 0.000000 , 0.803922} ,
   {"medium orchid"           , "xba55d3" , 0.729412 , 0.333333 , 0.827451} ,
   {"medium purple"           , "x9370db" , 0.576471 , 0.439216 , 0.858824} ,
   {"medium sea green"        , "x3cb371" , 0.235294 , 0.701961 , 0.443137} ,
   {"medium slate blue"       , "x7b68ee" , 0.482353 , 0.407843 , 0.933333} ,
   {"medium spring green"     , "x00fa9a" , 0.000000 , 0.980392 , 0.603922} ,
   {"medium turquoise"        , "x48d1cc" , 0.282353 , 0.819608 , 0.800000} ,
   {"medium violet red"       , "xc71585" , 0.780392 , 0.082353 , 0.521569} ,
   {"midnight blue"           , "x191970" , 0.098039 , 0.098039 , 0.439216} ,
   {"mint cream"              , "xf5fffa" , 0.960784 , 1.000000 , 0.980392} ,
   {"misty rose"              , "xffe4e1" , 1.000000 , 0.894118 , 0.882353} ,
   {"moccasin"                , "xffe4b5" , 1.000000 , 0.894118 , 0.709804} ,
   {"navajo white"            , "xffdead" , 1.000000 , 0.870588 , 0.678431} ,
   {"navy blue"               , "x000080" , 0.000000 , 0.000000 , 0.501961} ,
   {"navy"                    , "x000080" , 0.000000 , 0.000000 , 0.501961} ,
   {"old lace"                , "xfdf5e6" , 0.992157 , 0.960784 , 0.901961} ,
   {"olive drab"              , "x6b8e23" , 0.419608 , 0.556863 , 0.137255} ,
   {"orange red"              , "xff4500" , 1.000000 , 0.270588 , 0.000000} ,
   {"orange"                  , "xffa500" , 1.000000 , 0.647059 , 0.000000} ,
   {"orange1"                 , "xffa500" , 1.000000 , 0.647059 , 0.000000} ,
   {"orange2"                 , "xee9a00" , 0.933333 , 0.603922 , 0.000000} ,
   {"orange3"                 , "xcd8500" , 0.803922 , 0.521569 , 0.000000} ,
   {"orange4"                 , "x8b5a00" , 0.545098 , 0.352941 , 0.000000} ,
   {"orchid"                  , "xda70d6" , 0.854902 , 0.439216 , 0.839216} ,
   {"orchid1"                 , "xff83fa" , 1.000000 , 0.513725 , 0.980392} ,
   {"orchid2"                 , "xee7ae9" , 0.933333 , 0.478431 , 0.913725} ,
   {"orchid3"                 , "xcd69c9" , 0.803922 , 0.411765 , 0.788235} ,
   {"orchid4"                 , "x8b4789" , 0.545098 , 0.278431 , 0.537255} ,
   {"pale goldenrod"          , "xeee8aa" , 0.933333 , 0.909804 , 0.666667} ,
   {"pale green"              , "x98fb98" , 0.596078 , 0.984314 , 0.596078} ,
   {"pale turquoise"          , "xafeeee" , 0.686275 , 0.933333 , 0.933333} ,
   {"pale violet red"         , "xdb7093" , 0.858824 , 0.439216 , 0.576471} ,
   {"papaya whip"             , "xffefd5" , 1.000000 , 0.937255 , 0.835294} ,
   {"peach puff"              , "xffdab9" , 1.000000 , 0.854902 , 0.725490} ,
   {"peru"                    , "xcd853f" , 0.803922 , 0.521569 , 0.247059} ,
   {"pink"                    , "xffc0cb" , 1.000000 , 0.752941 , 0.796078} ,
   {"pink1"                   , "xffb5c5" , 1.000000 , 0.709804 , 0.772549} ,
   {"pink2"                   , "xeea9b8" , 0.933333 , 0.662745 , 0.721569} ,
   {"pink3"                   , "xcd919e" , 0.803922 , 0.568627 , 0.619608} ,
   {"pink4"                   , "x8b636c" , 0.545098 , 0.388235 , 0.423529} ,
   {"plum"                    , "xdda0dd" , 0.866667 , 0.627451 , 0.866667} ,
   {"plum1"                   , "xffbbff" , 1.000000 , 0.733333 , 1.000000} ,
   {"plum2"                   , "xeeaeee" , 0.933333 , 0.682353 , 0.933333} ,
   {"plum3"                   , "xcd96cd" , 0.803922 , 0.588235 , 0.803922} ,
   {"plum4"                   , "x8b668b" , 0.545098 , 0.400000 , 0.545098} ,
   {"powder blue"             , "xb0e0e6" , 0.690196 , 0.878431 , 0.901961} ,
   {"purple"                  , "xa020f0" , 0.627451 , 0.125490 , 0.941176} ,
   {"purple1"                 , "x9b30ff" , 0.607843 , 0.188235 , 1.000000} ,
   {"purple2"                 , "x912cee" , 0.568627 , 0.172549 , 0.933333} ,
   {"purple3"                 , "x7d26cd" , 0.490196 , 0.149020 , 0.803922} ,
   {"purple4"                 , "x551a8b" , 0.333333 , 0.101961 , 0.545098} ,
   {"red"                     , "xff0000" , 1.000000 , 0.000000 , 0.000000} ,
   {"red1"                    , "xff0000" , 1.000000 , 0.000000 , 0.000000} ,
   {"red2"                    , "xee0000" , 0.933333 , 0.000000 , 0.000000} ,
   {"red3"                    , "xcd0000" , 0.803922 , 0.000000 , 0.000000} ,
   {"red4"                    , "x8b0000" , 0.545098 , 0.000000 , 0.000000} ,
   {"rosy brown"              , "xbc8f8f" , 0.737255 , 0.560784 , 0.560784} ,
   {"royal blue"              , "x4169e1" , 0.254902 , 0.411765 , 0.882353} ,
   {"saddle brown"            , "x8b4513" , 0.545098 , 0.270588 , 0.074510} ,
   {"salmon"                  , "xfa8072" , 0.980392 , 0.501961 , 0.447059} ,
   {"salmon1"                 , "xff8c69" , 1.000000 , 0.549020 , 0.411765} ,
   {"salmon2"                 , "xee8262" , 0.933333 , 0.509804 , 0.384314} ,
   {"salmon3"                 , "xcd7054" , 0.803922 , 0.439216 , 0.329412} ,
   {"salmon4"                 , "x8b4c39" , 0.545098 , 0.298039 , 0.223529} ,
   {"sandy brown"             , "xf4a460" , 0.956863 , 0.643137 , 0.376471} ,
   {"sea green"               , "x2e8b57" , 0.180392 , 0.545098 , 0.341176} ,
   {"seashell"                , "xfff5ee" , 1.000000 , 0.960784 , 0.933333} ,
   {"seashell1"               , "xfff5ee" , 1.000000 , 0.960784 , 0.933333} ,
   {"seashell2"               , "xeee5de" , 0.933333 , 0.898039 , 0.870588} ,
   {"seashell3"               , "xcdc5bf" , 0.803922 , 0.772549 , 0.749020} ,
   {"seashell4"               , "x8b8682" , 0.545098 , 0.525490 , 0.509804} ,
   {"sienna"                  , "xa0522d" , 0.627451 , 0.321569 , 0.176471} ,
   {"sienna1"                 , "xff8247" , 1.000000 , 0.509804 , 0.278431} ,
   {"sienna2"                 , "xee7942" , 0.933333 , 0.474510 , 0.258824} ,
   {"sienna3"                 , "xcd6839" , 0.803922 , 0.407843 , 0.223529} ,
   {"sienna4"                 , "x8b4726" , 0.545098 , 0.278431 , 0.149020} ,
   {"sky blue"                , "x87ceeb" , 0.529412 , 0.807843 , 0.921569} ,
   {"slate blue"              , "x6a5acd" , 0.415686 , 0.352941 , 0.803922} ,
   {"slate gray"              , "x708090" , 0.439216 , 0.501961 , 0.564706} ,
   {"slate grey"              , "x708090" , 0.439216 , 0.501961 , 0.564706} ,
   {"snow"                    , "xfffafa" , 1.000000 , 0.980392 , 0.980392} ,
   {"snow1"                   , "xfffafa" , 1.000000 , 0.980392 , 0.980392} ,
   {"snow2"                   , "xeee9e9" , 0.933333 , 0.913725 , 0.913725} ,
   {"snow3"                   , "xcdc9c9" , 0.803922 , 0.788235 , 0.788235} ,
   {"snow4"                   , "x8b8989" , 0.545098 , 0.537255 , 0.537255} ,
   {"spring green"            , "x00ff7f" , 0.000000 , 1.000000 , 0.498039} ,
   {"steel blue"              , "x4682b4" , 0.274510 , 0.509804 , 0.705882} ,
   {"tan"                     , "xd2b48c" , 0.823529 , 0.705882 , 0.549020} ,
   {"tan1"                    , "xffa54f" , 1.000000 , 0.647059 , 0.309804} ,
   {"tan2"                    , "xee9a49" , 0.933333 , 0.603922 , 0.286275} ,
   {"tan3"                    , "xcd853f" , 0.803922 , 0.521569 , 0.247059} ,
   {"tan4"                    , "x8b5a2b" , 0.545098 , 0.352941 , 0.168627} ,
   {"thistle"                 , "xd8bfd8" , 0.847059 , 0.749020 , 0.847059} ,
   {"thistle1"                , "xffe1ff" , 1.000000 , 0.882353 , 1.000000} ,
   {"thistle2"                , "xeed2ee" , 0.933333 , 0.823529 , 0.933333} ,
   {"thistle3"                , "xcdb5cd" , 0.803922 , 0.709804 , 0.803922} ,
   {"thistle4"                , "x8b7b8b" , 0.545098 , 0.482353 , 0.545098} ,
   {"tomato"                  , "xff6347" , 1.000000 , 0.388235 , 0.278431} ,
   {"tomato1"                 , "xff6347" , 1.000000 , 0.388235 , 0.278431} ,
   {"tomato2"                 , "xee5c42" , 0.933333 , 0.360784 , 0.258824} ,
   {"tomato3"                 , "xcd4f39" , 0.803922 , 0.309804 , 0.223529} ,
   {"tomato4"                 , "x8b3626" , 0.545098 , 0.211765 , 0.149020} ,
   {"turquoise"               , "x40e0d0" , 0.250980 , 0.878431 , 0.815686} ,
   {"turquoise1"              , "x00f5ff" , 0.000000 , 0.960784 , 1.000000} ,
   {"turquoise2"              , "x00e5ee" , 0.000000 , 0.898039 , 0.933333} ,
   {"turquoise3"              , "x00c5cd" , 0.000000 , 0.772549 , 0.803922} ,
   {"turquoise4"              , "x00868b" , 0.000000 , 0.525490 , 0.545098} ,
   {"violet red"              , "xd02090" , 0.815686 , 0.125490 , 0.564706} ,
   {"violet"                  , "xee82ee" , 0.933333 , 0.509804 , 0.933333} ,
   {"wheat"                   , "xf5deb3" , 0.960784 , 0.870588 , 0.701961} ,
   {"wheat1"                  , "xffe7ba" , 1.000000 , 0.905882 , 0.729412} ,
   {"wheat2"                  , "xeed8ae" , 0.933333 , 0.847059 , 0.682353} ,
   {"wheat3"                  , "xcdba96" , 0.803922 , 0.729412 , 0.588235} ,
   {"wheat4"                  , "x8b7e66" , 0.545098 , 0.494118 , 0.400000} ,
   {"white smoke"             , "xf5f5f5" , 0.960784 , 0.960784 , 0.960784} ,
   {"white"                   , "xffffff" , 1.000000 , 1.000000 , 1.000000} ,
   {"yellow green"            , "x9acd32" , 0.603922 , 0.803922 , 0.196078} ,
   {"yellow"                  , "xffff00" , 1.000000 , 1.000000 , 0.000000} ,
   {"yellow1"                 , "xffff00" , 1.000000 , 1.000000 , 0.000000} ,
   {"yellow2"                 , "xeeee00" , 0.933333 , 0.933333 , 0.000000} ,
   {"yellow3"                 , "xcdcd00" , 0.803922 , 0.803922 , 0.000000} ,
   {"yellow4"                 , "x8b8b00" , 0.545098 , 0.545098 , 0.000000}
} ;
const int num_colors = sizeof(color_trans)/sizeof(color_trans[0]);

/*!
 * A <color> is either a keyword or a numerical RGB specification.
 */
int color_is_valid( string* color ) {

    string       color_orig = *color;
    string       gnuplot_cmd_file_name = "/tmp/dpx_gp_commands.txt";
    string       my_colors_file_name = "/tmp/dpx_gp_colornames.txt";
    ofstream     tmp_file;
    ifstream     known_color_names;
    string       copy_of_txt_file_line;
    string       tmp_string;
    stringstream tmp_stream;
    stringstream color_stream;

    //! Create a tmp file with gnuplot commands that find colornames.
    tmp_file.open( gnuplot_cmd_file_name.c_str() );
    tmp_file << "show palette colornames" ;
    tmp_file.close();
    //! Run gnuplot, save output to file
    tmp_stream.str("");
    tmp_stream << "gnuplot " << gnuplot_cmd_file_name << " >& " << my_colors_file_name ;
    system( tmp_stream.str().c_str() );
    //! Delete tmp file
    tmp_stream.str("");
    tmp_stream << "rm -f " << gnuplot_cmd_file_name << " &" ;
    system( tmp_stream.str().c_str() );

    //! Create a list of defined color names
    known_color_names.open( my_colors_file_name.c_str() );
    if ( known_color_names.is_open() ) {
        color_stream.str("");  //clear
        while (! known_color_names.eof() )
        {
            getline( known_color_names, copy_of_txt_file_line );
            color_stream << copy_of_txt_file_line << endl;
        }
        known_color_names.close() ;
    }
    //! Delete results file
    tmp_stream.str("");
    tmp_stream << "rm -f " << my_colors_file_name << " &" ;
    system( tmp_stream.str().c_str() );

    /*!
     * Verify that the given color is in RGB format (i.e. begins
     * with a pound "#"), or by determining if the name
     * (e.g. "salmon") is recognizable by the gnuplot application.
     */
    tmp_string  = color_orig;
    tmp_string += ' ';  // prevent false finds
    if ( color_stream.str().find(tmp_string) != string::npos  ||
         tmp_string.compare(0, 1, "#") == 0 ) {

        //! This is a valid color name.
        return(1) ;

    } else if ( convert_to_hexcolor(color) != -1 ) {

        //! Color name changed to a HEX color code.
        return(1) ;

    } else {

        cout << "warning: \"" << color_orig
             << "\" is not a known color name in Gnuplot." << endl;
        cout << "Please select another color, or use a hexadecimal "
             << "color code instead" << endl;
        cout << "(e.g. #FF0000 for red)." << endl;
        return(0) ;
    }
}

int color_is_valid( char* color ) {
    string str_ = color;
    return( color_is_valid(&str_) );
}

/*!
 * Pass a pointer to a color variable, and have the function change
 * the variable's value from a colorname to a hexadeciaml color code.
 */
int convert_to_hexcolor( string* color ) {

    string color_orig = *color;
    string duplicate = color_orig;
    string tmp_string;

    //! Remove spaces from string
    while ( duplicate.find(" ") != string::npos ) {
        duplicate.erase(duplicate.find(" "),1);
    }

    for ( int i = 0;  i < num_colors;  i++ ) {

        if ( strcasecmp(duplicate.c_str(), (const char*)color_trans[i].color) == 0 ) {
            //! copy hexadecimal color code
            tmp_string = color_trans[i].hex_color;
            if ( tmp_string.find("x", 0, 1) != string::npos ) {

                //! replace "x" with pound "#"
                tmp_string.replace(0, 1, "#");
            }
            cout << "gp_colors.cpp: converting \"" << color_orig
                 << "\" to \"" << tmp_string << "\"." << endl;
            *color = tmp_string;
            return(0) ;
        }
    }

    return(-1) ;
}

int convert_to_hexcolor( char* color ) {
    string str_ = color;
    return( convert_to_hexcolor(&str_) );
}

/*!
 * Pass a pointer to a color variable, and have the function change the
 * variable's value from a colorname to a RGB value where colors are
 * specified as triples of floating point numbers between 0.0 and 1.0.
 */
int convert_to_rgbcolor( string* color ) {

    string color_orig = *color;
    string duplicate = color_orig;
    string tmp_string;
    stringstream tmp_stream;
    string delim = " ";

    //! Remove spaces from string
    while ( duplicate.find(" ") != string::npos ) {
        duplicate.erase(duplicate.find(" "),1);
    }

    for ( int i = 0;  i < num_colors;  i++ ) {

        if ( strcasecmp(duplicate.c_str(), (const char*)color_trans[i].color) == 0 ) {
            tmp_stream.str(""); tmp_stream << color_trans[i].red ;
            tmp_string  = tmp_stream.str();
            tmp_string += delim;
            tmp_stream.str(""); tmp_stream << color_trans[i].green ;
            tmp_string += tmp_stream.str();
            tmp_string += delim;
            tmp_stream.str(""); tmp_stream << color_trans[i].blue ;
            tmp_string += tmp_stream.str();
            *color = tmp_string;
            return(0) ;
        }
    }

    return(-1) ;
}

int convert_to_rgbcolor( char* color ) {
    string str_ = color;
    return( convert_to_rgbcolor(&str_) );
}
